package br.com.hstar.client.usuario;

import br.com.hstar.client.util.KeyValue;

import com.google.gwt.user.client.rpc.IsSerializable;

public class UsuarioUI implements IsSerializable, KeyValue {

	private Long id;
    private String nome;
    private String login;
    private String senha;
    private Integer permissao;
    
    public static int ADMINISTRADOR = 0;
    public static int RECEPCIONISTA = 1;
    public static int CAMAREIRA = 2;
    
	//o ID sempre deve vir primeiro, por causa da ordem
	//que os atributos irao ser listados na consulta
	private static final String[] columns = {
					"Id", 
					"Nome",
					"Permissao",
					"Login"
					};

	public UsuarioUI() {

	}
	
	// gets e sets------------------------
	public Long getKey() {
		return getId();
	}
	
	//Esse método é usado para passar os parametros desse
	//objeto para as listas.
	public String getValue(int position) {
		if(position == 0) {
			return getId().toString();
		} else if(position == 1) {
			return getNome();
		} else if(position == 2) {
			return getPermissao().toString();
		} else if(position == 3) {
			return getLogin();
		} else {
			return null;
		}
	}

	public static String[] getColumns() {
		return columns;
	}

	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	public Integer getPermissao() {
		return permissao;
	}

	public void setPermissao(Integer permissao) {
		this.permissao = permissao;
	}

	public String getSenha() {
		return senha;
	}

	public void setSenha(String senha) {
		this.senha = senha;
	}

	public String getLogin() {
		return login;
	}

	public void setLogin(String login) {
		this.login = login;
	}

}
